/**
 * Muis
 *
 * Deze klasse houd de verplaatsing van 1 muis bij, tot deze wordt gereset*
 *
 * @author Youri Hemeleers <Youri.Hemeleers@Gmail.Com>
 * @date    24/02/11
 * @modified Jasper Nevens <jasper.nevens@gmail.com>
 * @date	24/03/11
 */
#ifndef MUIS_H_
#define	MUIS_H_

#include <iostream>
#include <pthread.h>
#include <fstream> //mocht dit in de cpp file ? best hier zeker ...
#include <math.h>
#include "thread.h"

using namespace std;

// Muis class definition
class Muis : public Thread
{
	public:
		// constructor	
		Muis( string dev );
		~Muis(void);

		// debug
		void reset(void);
		void setVerbose(bool);
		// set correction factors
		void setAngle(float);
		void setDPI(int);
		// set position
		void setX(int);
		void setY(int);
		// retrieve position
		int getX(void);
		int	getY(void);
		// other
		void execute();
	
	private:
		ifstream devFile;
		string 	device;
		
		bool 	verbose;
		float	angle;
		int		dpi;
		int		x,y;
}; 

#endif /* MUIS_H_ */
